Bias detection

ABSTRACT

A processor may identify one or more data fields of interest. The processor may receive data for each of the data fields of interest. The processor may compute one or more bias scores for the data fields of interest based on the data. The processor may develop a bias matrix with the bias scores. The processor may display the bias matrix to a user.

BACKGROUND

The present disclosure relates generally to the field of perceptionanalytics, and more specifically to bias detection and mitigation.

As technology advances, the impact of artificial intelligence (AI) andother cognitive tools increasingly impact the world. In AI modeling,bias is the tendency of a model to consistently make unsupportedpredictions as a result of failure to take into account all relevantinformation. Bias may result from a model's inability to learn a truesignal from a dataset or it may result from erroneous assumptions whichlead to missed relevant correlations. Bias may come in many forms:sample bias, selection bias, reporting bias, exclusion bias, measurementbias, recall bias, and observer bias, among others. Sample bias may bethe result of training and validation datasets failures to reflectrealities of the environment of use of the model. Selection bias may bethe result of training and validation data not reflecting a randomsample. Reporting bias may be the result of collected data not being atrue representation of the real world. Exclusion bias may be the resultof disposing of relevant data because it is erroneously tagged asirrelevant or unimportant, or it may be the result of excludinginformation which is relevant. Measurement bias may be the result ofdata distortion flowing from data collection for training and validationdiffering from data collected during use in the real world. Recall biasmay be the result of inconsistent data labeling. Observer bias is alsoknown as confirmation bias; it may be the result of expecting,consciously or subconsciously, certain data to tend toward certaindeterminations and as a result that data actually does tend toward thosedeterminations.

SUMMARY

Embodiments of the present disclosure include a system, method, andcomputer program product for bias detection and mitigation.

In some embodiments of the present disclosure, a processor identifiesone or more data fields of interest. The processor may receive data foreach of the data fields of interest. The processor may compute one ormore bias scores for the data fields of interest based on the data. Theprocessor may develop a bias matrix with the bias scores. The processormay display the bias matrix to a user.

The above summary is not intended to describe each illustratedembodiment or every implementation of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings included in the present disclosure are incorporated into,and form part of, the specification. They illustrate embodiments of thepresent disclosure and, along with the description, serve to explain theprinciples of the disclosure. The drawings are only illustrative ofcertain embodiments and do not limit the disclosure.

FIG. 1 illustrates a system and components for generating a bias scoreaccording to embodiments of the disclosure.

FIG. 2 illustrates a flowchart of generating an individualpredisposition score according to embodiments of the disclosure.

FIG. 3 illustrates a flowchart of generating an individual awarenessscore according to embodiments of the disclosure.

FIG. 4 illustrates a flowchart of generating a team predisposition scoreaccording to embodiments of the disclosure.

FIG. 5 illustrates a cloud computing environment, in accordance withembodiments of the present disclosure.

FIG. 6 illustrates abstraction model layers, in accordance withembodiments of the present disclosure.

FIG. 7 illustrates a high-level block diagram of an example computersystem that may be used in implementing one or more of the methods,tools, and modules, and any related functions, described herein, inaccordance with embodiments of the present disclosure.

While the embodiments described herein are amenable to variousmodifications and alternative forms, specifics thereof have been shownby way of example in the drawings and will be described in detail. Itshould be understood, however, that the particular embodiments describedare not to be taken in a limiting sense. On the contrary, the intentionis to cover all modifications, equivalents, and alternatives fallingwithin the spirit and scope of the disclosure.

DETAILED DESCRIPTION

Aspects of the present disclosure relate generally to the field ofperception analytics, and more specifically to bias detection andmitigation. It will be readily understood that the instant components,as generally described and illustrated in the figures herein, may bearranged and designed in a wide variety of different configurations.Thus, the following detailed description of the embodiments of at leastone of a method, apparatus, non-transitory computer readable medium, andsystem, as represented in the attached figures, is not intended to limitthe scope of the application as claimed but is merely representative ofselected embodiments.

The instant features, structures, or characteristics as describedthroughout this specification may be combined or removed in any suitablemanner in one or more embodiments. For example, the usage of the phrases“example embodiments,” “some embodiments,” or other similar languagethroughout this specification refers to the fact that a particularfeature, structure, or characteristic described in connection with theembodiment may be included in at least one embodiment. Thus, appearancesof the phrases “example embodiments,” “in some embodiments,” “in otherembodiments,” or other similar language throughout this specification donot necessarily all refer to the same group of embodiments, and thedescribed features, structures, or characteristics may be combined orremoved in any suitable manner in one or more embodiments. Further, inthe diagrams, any connection between elements can permit one-way and/ortwo-way communication even if the depicted connection is a one-way or atwo-way arrow. Also, any device depicted in the drawings can be adifferent device. For example, if a mobile device is shown sendinginformation, a wired device can also be used to send the information.

Bias may be mitigated to obtain de-biased models and thereby producefairer modeling. Fairness may be used to measure potential bias of amodel exhibits. A model is considered to be fair when results areindependent of inconsequential variables. For example, if an applicationapproval AI system for a bank were considering approving a loan to aperson, a model used by the application approval AI system may be moreobjectively fair if the decision is not influenced by the date of birthof the person because the date of birth of a person does not impact theability of that person to repay the loan.

AI modeling is biased because individuals construct the AI models andindividuals have bias. Individuals may contribute bias to their work andwork product consciously or unconsciously. Work, work products, andother results may be made fairer by mitigating bias. To properlymitigate bias, it should first be detected so that the proper mitigationmay be conducted.

Bias may be visualized as a scale that is off balance; if the unbalanceis recognized, it may be corrected by countervailing it. In a similarway, bias may be mitigated by detecting the bias and compensating forit. The present disclosure offers various contributions to the art.Among these contributions are individual and team bias detection,awareness, and mitigation.

In some embodiments of the present disclosure, computing one or morebias scores includes aggregating the data into data field groupsassociated with data fields of interest and evaluating a bias score foreach of the data field groups such that the bias score is an output. Oneor more bias scores may be computed for one or more of the data fieldsof interest based on the data. A bias matrix may be developed from theone or more bias scores, and the bias matrix may be displayed to a user.

FIG. 1 illustrates a system and components for generating a bias score100 according to embodiments of the disclosure. Some embodiments of thepresent disclosure for bias detection and mitigation may include aprocessor identifying one or more data fields 112, 114, and/or 116 ofinterest. The processor may receive data for each of the data fields112, 114, and 116 of interest. The processor may compute one or morebias scores for the data fields 112, 114, and 116 of interest based onthe data. The processor may develop a bias matrix with the bias scores.The processor may display the bias matrix to a user.

Data fields 112, 114, and 116 of interest may include any type ofinformation which may identify one or more potential predispositions.Data fields 112, 114, and 116 of interest may incorporate informationavailable in a database 120 as well as data which may be collected froma user via a prompt or questionnaire (e.g., inquiry data 110). Datafields 112, 114, and 116 of interest may include, for example,background data, education data, personality, et cetera.

In some embodiments of the present disclosure, receiving data includesaccepting user input data (e.g., inquiry data 110) from a user, andinquiry data 110 may be submitted to a corpus 130. In some embodiments,accepting the user input data includes providing the user with a promptand analyzing user results from the prompt; in some embodiments, theprompt includes one or more inquiries of the user. A user may beprompted to input inquiry data 110 via a prompt, such as via a pop-updisplay or an email. Inquiry data 110 may be any data collected viainquiry. An inquiry may include one or more questions, questionnaires,guided response fields, or other open response fields, or similar. Aninquiry may be used in, as, or as part of a prompt to obtain informationfrom a user.

In some embodiments of the present disclosure, receiving data includesharvesting social media for the social media data of the user. Dataabout a user may be available on a database 120. The database 120 maybe, for example, one or more social media platforms which the user hasused. The user may opt to permit the database 120 to be harvested suchthat insight data 128 may be gathered from the profile and/or otherinteractions the user has had with the database. For example, the usermay have previously taken a personality test to acquire insight data128; the user may decide to use that insight data 128 to garnerpersonality insights and therefore request the personality testinformation be harvested for insight data 128 to be submitted to thecorpus 130. In some embodiments, harvesting social media includesanalyzing interactions with posts that include metadata associated withthe data aggregated into the data field groups.

A database 120 may include information about the background, education,and/or personality (based on insight data 128) of a user. For example, auser may maintain a profile on a social media website which containsinformation about various aspects of the user; the user may, forexample, include education data and career data in the basic informationsection, background (e.g., places lived, etc.) data in a bio, andpersonality data that is identified from the interactions the user haswith other members of the social media site.

In some embodiments of the present disclosure, receiving data includes acombination of accepting user input data from a user and harvestingsocial media for social media data for the user. For example, a user maysubmit inquiry data 110 to supply background data (e.g., data field 112)and educational data (e.g., data field 116) and social media harvestingmay be used on a social media database (e.g., databased 120) to obtaininsight data 128. Inquiry data 110 and data harvested from the database120 may complement one another in the same data field. For example, auser may submit inquiry data 110 pertaining to background data (e.g.,data field 112) and insight data 128 and social media harvesting may beused on a social media database (e.g., databased 120) to obtainadditional background data (e.g., data field 112) and/or insight data128.

Any type of data may be collected in any feasible manner. For example,in some embodiments, a user may decline social media harvesting andchoose to take a personality questionnaire to obtain (personality)insight data 128. In some embodiments, a user may opt into social mediaharvesting such that insight data 128, data field 112, data field 114,and data field 116 data may all be pulled by social media harvesting. Insome embodiments, a user may opt in to social media harvesting to pulluser data for one or more types of data and complement the data pulledfrom the one or more databases 120 with inquiry data 110 which the usermay submit to a corpus 130 via inquiry.

In some embodiments of the present disclosure, receiving data includesaccepting user input data from a user and harvesting social media forsocial media data affiliated with the user. In some embodiments of thepresent disclosure, accepting user input data includes providing a userwith a prompt and analyzing user results from the prompt; in someembodiments, the prompt includes one or more inquiries of the user. Insome embodiments of the present disclosure, harvesting social media forsocial media data includes analyzing interactions with posts wherein theposts include metadata associated with the data.

Various types of data may be analyzed to detect bias. Specified datafields 112, 114, and/or 116 may be of interest to determine certainkinds of bias. Data may be aggregated into data field groups associatedwith various data fields of interest. Data fields 112, 114, and/or 116of interest may include, for example, background data, education data,personality data, etc. Data fields 112, 114, and 116 of interest mayalso be sub-fields of larger fields of interest. For example, backgrounddata of data field 112 may include environmental data as a type ofbackground data, and the environmental data may be a data field 112,114, and/or 116 of interest.

In some embodiments of the present disclosure, the data fields 112, 114,and/or 116 include background, personality, and/or education. Backgrounddata may include environmental data, data regarding knowledge of varioustopics (e.g., health, finances, et cetera.), et cetera. Education datamay include data concerning education level, education type, number oflanguages known, proficiency in known language(s), certifications, etc.Personality data may include data concerning social media votes, socialmedia likes, social media themes, personality type, etc.

In some embodiments, a bias score reflects the bias of a user within adata field 112, 114, and/or 116 of interest. For example, backgrounddata may include information to calculate a bias score specificallybased on the environmental data associated with a user (e.g., did theuser grow up in a city, suburb, etc.), and a bias score may becalculated for the user based on the environmental data. A bias scorecalculated based on the environmental data associated with a user may beused to compute a bias score for the background of the user.

In some embodiments of the present disclosure, computing the bias scoresincludes classifying types of bias into bias classifications. Biasclassifications may include, for example, a negative, neutral, orpositive bias. Bias may be classified for an overarching theme of biasfor a user, for a theme of a data field 112, 114, and/or 116, or as atheme of a subfield within a data field 112, 114, and/or 116. Forexample, a user may have an overarching neutral classification, apositive education classification, and a negative certificationclassification; such a user may, for example, have graduated from anengineering undergraduate program but not have an engineer-in-trainingdesignation.

Data in each data field 112, 114, and/or 116 may be discrete such thateach item of interest is unique to a specific data field or may be heldin common with one or more other data fields. For example, in someembodiments, a certain data point about an individual may only reflecton the education of that individual whereas another data point mayreflect on both the education and the personality of the individual.Data may be binned into intersectional fields to garner additionalinsights such as, for example, metadata which may reveal themes in thedata.

In some embodiments, inquiry data 110 and any data found in database 120may be submitted to a corpus 130. The corpus 130 may provide thecollected data to a processor 140 to compute a bias score or a biasmatrix, and the bias score or bias matrix may be communicated via adisplay 150 to a user. Multiple bias scores and/or bias matrices may becomputed at once and displayed simultaneously or in short order. In someembodiments, multiple bias scores and/or bias matrices may be calculatedfor a team, the bias scores/matrices of each member of the team may beaggregated into a team bias score and/or a team bias matrix.

FIG. 2 illustrates a flowchart of generating an individual bias score200 according to embodiments of the disclosure. Some embodiments of thepresent disclosure for bias detection and mitigation may includeidentifying data fields 212, 214, 216, and/or 218 of interest, receivingdata for each of the data fields 212, 214, 216, and/or 218 of interest,computing bias scores for the data fields 212, 214, 216, and/or 218 ofinterest based on the data, developing a bias matrix with the biasscores, and displaying the bias matrix via a display.

Generating an individual bias score 200 may include data field selection210 and overall data collection 220 for insights on the individual withrespect to each data field 212, 214, 216, and/or 218. Generating anindividual bias score 200 may include bias matrix construction 230 basedon bias scores computed for each of the data fields. Generating anindividual bias score 200 may include computing and/or outputting an(individual) bias score 240 from a constructed bias matrix 230.

Data fields may be selected 210. Selected data fields 210 may includedata fields 212, 214, 216, and/or 218, which could be, for example, abackground of a user, a career of the user, an education of the user,and/or personality of the user (e.g., INTJ, etc.).

Overall data may be collected 220 for the data fields selected 210.Overall data collection 220 may include data field collections 222, 224,226, and/or 228. Overall data collection 220 may use one or more methodsof collecting data in regard to the data fields 212, 214, 216, and/or218 to produce the data field collections 222, 224, 226, and/or 228.Overall data may be collected 220 from existing data sources, such as adatabase with information about an individual, as well as or in additionto new data sources, such as a questionnaire completed and submittedspecifically for the purpose of evaluating an individual bias score.

An existing data source may be, for example, a social media profile ofthe individual which may be mined for information via social mediaharvesting. An existing source of data may be a document describing theindividual or a perspective the individual offers, such as a résumé,curriculum vitae, scholastic article, blog post, book, et cetera. Usinga natural language processor may also enable the submission ofadditional information such as, for example, audio and/or videointerviews of the individual, discussions between the individual andanother person, and/or reactions by the individual to various stimuli.

A new data source may be, for example, an inquiry such as aquestionnaire prompted to an individual which the individual completesand submits for bias score calculation. An inquiry may include questionsto an individual about the individual. For example, an inquiry mayinclude questions relating to the background of the individual such as,for example, what kind of house the individual grew up in, et cetera.

A bias matrix may be constructed 230 based on the overall datacollection 220 (e.g., the data field data collections 222, 224, 226, and228). Data field bias score computations 232, 234, 236, and 238 may becomputed for each data field 212, 214, 216, and 218 and be used toconstruct 230 a bias matrix. A first data field bias score may becomputed 232 based on data received from the first data field datacollection 222, a second data field bias score may be computed 234 basedon data received from the second data field data collection 224, anthird data field bias score may be computed 236 based on data receivedfrom the third data field data collection 226, and/or a fourth datafield bias score may be computed 238 based on data received about fromthe fourth data field data collection 228. The bias scores for each datafield 212, 214, 216, and 218 from the computations 232, 234, 236, and238 may be compiled into a bias matrix for the individual. The biasmatrix may represent the bias score 240. In some embodiments, the biasmatrix may be condensed into a solitary numerical bias score 240,whereas in other embodiments the bias matrix may itself be theexpression of the bias score 240.

Turning now to FIG. 3, illustrated is a flowchart diagram of generatingan individual awareness score 300 according to embodiments of thedisclosure.

Data may be collected 302 including data relating to an (individual)bias score S_(IB) 310 and self-assessment score S_(SA) 320. An biasscore S_(IB) 310 may include information about the data fields 312,which may include any of the data fields previously discussed in regardto FIGS. 1 and 2. An bias score S_(IB) 310 may be a bias matrixconstructed out of bias scores computed for an individual.

A self-assessment score S_(SA) 320 may include information about whatbiases the individual recognizes (e.g., preference for beach vacationsover ski vacations, etc.) in that person's own data fields 322, whichmay also include any of the data fields previously discussed in regardto FIGS. 1 and 2. The individual may gauge and self-report their ownbiases with respect to the various data fields (e.g., 322) of interest.

The self-assessment score S_(SA) 320 and the bias score S_(IB) 310 maybe compared 330. The comparison 330 of the self-assessment score S_(SA)320 to the bias score S_(IB) 310 may render an individual awarenessscore S_(IA) 340:

S _(IA) =S _(IB) −S _(SA)

An individual awareness score S_(IA) 340 indicates a high awareness ofthe individual of the biases of the individual. In some embodiments, anawareness score S_(IA) 340 may be expressed as an individual awarenessscore matrix to specifically identify levels of awareness within variousareas of bias. An individual awareness score matrix may be expressed as:

$\begin{bmatrix}B_{IA} \\C_{IA} \\E_{IA} \\P_{IA}\end{bmatrix}_{S_{IA}} = {\begin{bmatrix}B_{IB} \\C_{IB} \\E_{IB} \\P_{IB}\end{bmatrix}_{S_{IB}} - \begin{bmatrix}P_{SA} \\C_{SA} \\E_{SA} \\P_{SA}\end{bmatrix}_{S_{SA}}}$

wherein S indicates a score, B indicates a background score, C indicatesa culture score, E indicates an education score, P indicates apersonality score, subscript IA indicates individual awareness,subscript IB indicates individual bias, and subscript SA indicatesself-awareness.

In certain embodiments, the awareness score may be normalized such thatthe individual awareness score S_(IA) 340 is within certain bounds(e.g., between negative one and positive one or between negative ten andpositive ten). In some embodiments, such normalization will be builtinto the data collection phase such that the data collected isnormalized prior to computing the individual bias score S_(IB) 310, theself-assessment score S_(SA) 320, and/or the individual awareness scoreS_(IA) 340.

In some embodiments of the present disclosure, the bias matrix isrespectively computed for each member of a group of users and each biasscore is respectively associated with each member. In some embodiments,the bias matrices from the members of the group are aggregated into agroup bias matrix which may be associated with the collective or overallbias of the group.

FIG. 4 illustrates a flowchart of generating a team (bias) score 400according to embodiments of the disclosure. In some embodiments of thepresent disclosure, a bias matrix is computed for multiple users in agroup, and a bias score is computed for and associated with each memberof the group. In some embodiments, the bias matrices for the users ofthe group is aggregated into a group bias matrix associated with thecollective bias of the group.

A team score 460 may be calculated by combining the team member scores410. A team may include multiple individuals. An individual who is partof a team may be referred to as a member, a team member, or a member ofa team. Each team member may have unique experiences and biases.Individual bias scores may be computed for each team member, and thedata collected from computing the individual bias score of each teammember may be used to compile a team (bias) score 460.

Team member scores 410 and the affiliated data may be aggregated.Individual bias score data for teammate A 414, teammate B 416, andteammate C 418 (e.g., which may be generated based on any of theexemplary solutions provided herein, such as in regard to FIG. 2) may beaggregated and compiled into a team bias matrix 420. The team biasmatrix 420 may include a first data field team score 422, a second datafield team score 432, a third data field team score 442, and a fourthdata field team score 452. The team bias matrix 420 may be used tocompute a team score 460. The team score 460 may show the cumulativebias of the team.

Each score within the team bias matrix 420 may be a compilation ofscores from the various members of the team. Team member scores 410 maybe preserved in the team bias matrix 420 or may be numericallyaggregated with the other team member scores. For example, in somecontexts, it may be helpful for a team to identify specifically whichmember of a team is best suited for a particular task and, thus, it maybe beneficial to be able to compare team member scores directly withinthe team bias matrix; the same team may be expected to report theability of the team as a unit to address information in an unbiased way,and thus may prefer to aggregate the scores to show team balance whilepreserving the privacy of team members.

To preserve this flexibility, each score 422, 432, 442, and 452 withinthe team bias matrix 420 may include a matrix of scores for each datafield, averages of team member scores, summation of team member scores,some other numerical aggregation of team member scores, or somecombination thereof. The team bias matrix 420 may thus be a matrix ofaggregated scores, coordinates, codes, or a matrix of matrices.

Each score 422, 432, 442, and 452 within the team bias matrix 420 may becalculated using team member scores. For example, a first data fieldteam score 422 may be the aggregate of first field data respectivelyassociated to each of the teammate A 414, teammate B 416, and teammate C418. In some embodiments, each of the second, third, and fourth datafield team scores 432, 442, and 452 may be generated in the samefashion.

The team bias matrix 460 may itself be considered a team score 460 or itmay be used to compute a team score 460. A team score 460 may representthe biases of the team as a collective unit. A team score 460 may beassessed against a specified target 470.

In some embodiments, the collective bias of a team may be compared to atarget 470 to identify bias. A team may be found to have a negativecollective bias 462, no or neutral collective bias 464, or positivecollective bias 466. Collective team bias may be assessed for individualdata field types (e.g., background) or in the aggregate.

A team may use their team bias assessment in various applications. Forexample, a team may construct a team score 460 to identify biases andthereby become aware of strengths and weaknesses in the team withrespect to biases and thereby enable mitigation. In some embodiments, aprospective addition to a team may be assessed for an individual biasscore and the individual bias score may be compared with or incorporatedinto the team score 460 to determine whether the candidate is a properfit for achieving certain goals which may be gauged, for example, tomeasure whether the individual biases of the candidate help toneutralize biases present on the team.

Bias detection may be done on a local computer, on a remote computer, onthe cloud, or may use any suitable combination thereof.

An aspect of the disclosure is detection of bias scores using theinternet. Some embodiments of the present disclosure may utilize anatural language parsing and/or subparsing component. Thus, aspects ofthe disclosure may relate to natural language processing. Accordingly,an understanding of the embodiments of the present invention may beaided by describing embodiments of natural language processing systemsand the environments in which these systems may operate.

It is to be understood that although this disclosure includes a detaileddescription on cloud computing, implementation of the teachings recitedherein are not limited to a cloud computing environment. Rather,embodiments of the present disclosure are capable of being implementedin conjunction with any other type of computing environment currentlyknown or that which may be later developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g., networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of portion independence in that the consumergenerally has no control or knowledge over the exact portion of theprovided resources but may be able to specify portion at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly release to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported, providing transparency for both theprovider and consumer of the utilized service.

Service models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but the consumer has control over the deployed applications andpossibly application hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software which may include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,and deployed applications, and the consumer possibly has limited controlof select networking components (e.g., host firewalls).

Deployment models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and/or complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure that includes anetwork of interconnected nodes.

FIG. 5 illustrates a cloud computing environment 510 in accordance withembodiments of the present disclosure. As shown, cloud computingenvironment 510 includes one or more cloud computing nodes 500 withwhich local computing devices used by cloud consumers such as, forexample, personal digital assistant (PDA) or cellular telephone 500A,desktop computer 500B, laptop computer 500C, and/or automobile computersystem 500N may communicate. Nodes 500 may communicate with one another.They may be grouped (not shown) physically or virtually, in one or morenetworks, such as private, community, public, or hybrid clouds asdescribed hereinabove, or a combination thereof.

This allows cloud computing environment 510 to offer infrastructure,platforms, and/or software as services for which a cloud consumer doesnot need to maintain resources on a local computing device. It isunderstood that the types of computing devices 500A-N shown in FIG. 5are intended to be illustrative only and that computing nodes 500 andcloud computing environment 510 can communicate with any type ofcomputerized device over any type of network and/or network addressableconnection (e.g., using a web browser).

It is to be understood that although this disclosure includes a detaileddescription on cloud computing, implementation of the teachings recitedherein are not limited to a cloud computing environment. Rather,embodiments of the present disclosure are capable of being implementedin conjunction with any other type of computing environment now known orlater developed.

FIG. 6 illustrates abstraction model layers 600 provided by cloudcomputing environment 510 (FIG. 5) in accordance with embodiments of thepresent disclosure. It should be understood in advance that thecomponents, layers, and functions shown in FIG. 6 are intended to beillustrative only and embodiments of the disclosure are not limitedthereto. As depicted below, the following layers and correspondingfunctions are provided.

Hardware and software layer 615 includes hardware and softwarecomponents. Examples of hardware components include: mainframes 602;RISC (Reduced Instruction Set Computer) architecture-based servers 604;servers 606; blade servers 608; storage devices 611; and networks andnetworking components 612. In some embodiments, software componentsinclude network application server software 614 and database software616.

Virtualization layer 620 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers622; virtual storage 624; virtual networks 626, including virtualprivate networks; virtual applications and operating systems 628; andvirtual clients 630.

In one example, management layer 640 may provide the functions describedbelow. Resource provisioning 642 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and pricing 644provide cost tracking as resources and are utilized within the cloudcomputing environment as well as billing or invoicing for consumption ofthese resources. In one example, these resources may include applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks as well as protection for data and other resources.User portal 646 provides access to the cloud computing environment forconsumers and system administrators. Service level management 648provides cloud computing resource allocation and management such thatrequired service levels are met. Service level agreement (SLA) planningand fulfillment 650 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 660 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 662; software development and lifecycle management 664;virtual classroom education delivery 666; data analytics processing 668;transaction processing 670; and bias detection 672.

FIG. 7 illustrates a high-level block diagram of an example computersystem 701 that may be used in implementing one or more of the methods,tools, and modules, and any related functions, described herein (e.g.,using one or more processor circuits or computer processors of thecomputer) in accordance with embodiments of the present disclosure. Insome embodiments, the major components of the computer system 701 maycomprise a processor 702 with one or more central processing units(CPUs) 702A, 702B, 702C, and 702D, a memory subsystem 704, a terminalinterface 712, a storage interface 716, an I/O (Input/Output) deviceinterface 714, and a network interface 718, all of which may becommunicatively coupled, directly or indirectly, for inter-componentcommunication via a memory bus 703, an I/O bus 708, and an I/O businterface unit 710.

The computer system 701 may contain one or more general-purposeprogrammable CPUs 702A, 702B, 702C, and 702D, herein genericallyreferred to as the CPU 702. In some embodiments, the computer system 701may contain multiple processors typical of a relatively large system;however, in other embodiments, the computer system 701 may alternativelybe a single CPU system. Each CPU 702 may execute instructions stored inthe memory subsystem 704 and may include one or more levels of on-boardcache.

System memory 704 may include computer system readable media in the formof volatile memory, such as random access memory (RAM) 722 or cachememory 724. Computer system 701 may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 726 can be provided forreading from and writing to a non-removable, non-volatile magneticmedia, such as a “hard drive.” Although not shown, a magnetic disk drivefor reading from and writing to a removable, non-volatile magnetic disk(e.g., a “floppy disk”), or an optical disk drive for reading from orwriting to a removable, non-volatile optical disc such as a CD-ROM,DVD-ROM, or other optical media can be provided. In addition, memory 704can include flash memory, e.g., a flash memory stick drive or a flashdrive. Memory devices can be connected to memory bus 703 by one or moredata media interfaces. The memory 704 may include at least one programproduct having a set (e.g., at least one) of program modules that areconfigured to carry out the functions of various embodiments.

One or more programs/utilities 728, each having at least one set ofprogram modules 830, may be stored in memory 704. The programs/utilities728 may include a hypervisor (also referred to as a virtual machinemonitor), one or more operating systems, one or more applicationprograms, other program modules, and program data. Each of the operatingsystems, one or more application programs, other program modules, andprogram data, or some combination thereof, may include an implementationof a networking environment. Programs 728 and/or program modules 730generally perform the functions or methodologies of various embodiments.

Although the memory bus 703 is shown in FIG. 7 as a single bus structureproviding a direct communication path among the CPUs 702, the memorysubsystem 704, and the I/O bus interface 710, the memory bus 703 may, insome embodiments, include multiple different buses or communicationpaths, which may be arranged in any of various forms, such aspoint-to-point links in hierarchical, star, or web configurations,multiple hierarchical buses, parallel and redundant paths, or any otherappropriate type of configuration. Furthermore, while the I/O businterface 710 and the I/O bus 708 are shown as single respective units,the computer system 701 may, in some embodiments, contain multiple I/Obus interface units 710, multiple I/O buses 708, or both. Further, whilemultiple I/O interface units 710 are shown, which separate the I/O bus708 from various communications paths running to the various I/Odevices, in other embodiments some or all of the I/O devices may beconnected directly to one or more system I/O buses 708.

In some embodiments, the computer system 701 may be a multi-usermainframe computer system, a single-user system, a server computer, orsimilar device that has little or no direct user interface but receivesrequests from other computer systems (clients). Further, in someembodiments, the computer system 701 may be implemented as a desktopcomputer, portable computer, laptop or notebook computer, tabletcomputer, pocket computer, telephone, smartphone, network switches orrouters, or any other appropriate type of electronic device.

It is noted that FIG. 7 is intended to depict the representative majorcomponents of an exemplary computer system 701. In some embodiments,however, individual components may have greater or lesser complexitythan as represented in FIG. 7, components other than or in addition tothose shown in FIG. 7 may be present, and the number, type, andconfiguration of such components may vary.

The present disclosure may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present disclosure.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide, or other transmission media (e.g., light pulsespassing through a fiber-optic cable) or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network, and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers, and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present disclosure may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, configuration data for integrated circuitry, orsource code or object code written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Smalltalk, C++, or the like, and procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The computer readable program instructions may executeentirely on the user's computer, partly on the user's computer, as astand-alone software package, partly on the user's computer and partlyon a remote computer, or entirely on a remote computer or server. In thelatter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN) or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider). In some embodiments, electronic circuitry including,for example, programmable logic circuitry, field-programmable gatearrays (FPGA), or programmable logic arrays (PLA) may execute thecomputer readable program instructions by utilizing state information ofthe computer readable program instructions to personalize the electroniccircuitry, in order to perform aspects of the present disclosure.

Aspects of the present disclosure are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of thedisclosure. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a computer, or other programmable data processing apparatusto produce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks. These computerreadable program instructions may also be stored in a computer readablestorage medium that can direct a computer, a programmable dataprocessing apparatus, and/or other devices to function in a particularmanner such that the computer readable storage medium havinginstructions stored therein comprises an article of manufactureincluding instructions which implement aspects of the function/actspecified in the flowchart and/or block diagram block or blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus, or other device to produce a computerimplemented process such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present disclosure. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the blocks may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be accomplished as one step, executed concurrently,substantially concurrently, in a partially or wholly temporallyoverlapping manner, or the blocks may sometimes be executed in thereverse order depending upon the functionality involved. It will also benoted that each block of the block diagrams and/or flowchartillustration, and combinations of blocks in the block diagrams and/orflowchart illustration, can be implemented by special purposehardware-based systems that perform the specified functions or acts orcarry out combinations of special purpose hardware and computerinstructions.

Although the present disclosure has been described in terms of specificembodiments, it is anticipated that alterations and modification thereofwill become apparent to the skilled in the art. The descriptions of thevarious embodiments of the present disclosure have been presented forpurposes of illustration but are not intended to be exhaustive orlimited to the embodiments disclosed. Many modifications and variationswill be apparent to those of ordinary skill in the art without departingfrom the scope and spirit of the described embodiments. The terminologyused herein was chosen to best explain the principles of theembodiments, the practical application, or the technical improvementover technologies found in the marketplace or to enable others ofordinary skill in the art to understand the embodiments disclosedherein. Therefore, it is intended that the following claims beinterpreted as covering all such alterations and modifications as fallwithin the true spirit and scope of the disclosure.

What is claimed is:
 1. A computer-implemented method, said methodcomprising: identifying one or more data fields of interest; receivingdata for each of said one or more data fields of interest; computing oneor more bias scores for said one or more data fields of interest basedon said data; developing a bias matrix with said one or more biasscores; and displaying said bias matrix to a first user.
 2. The methodof claim 1 wherein said receiving data comprises: accepting user inputdata from a second user; and harvesting social media for social mediadata for said second user.
 3. The method of claim 2 wherein saidaccepting user input data comprises: providing said second user with aprompt; and analyzing user results from said prompt.
 4. The method ofclaim 3 wherein said prompt comprises one or more inquiries of saidsecond user.
 5. The method of claim 2 wherein said harvesting socialmedia for social media data comprises: analyzing one or more userinteractions with posts, wherein said posts include metadata associatedwith said data.
 6. The method of claim 1 wherein said computing one ormore bias scores comprises: aggregating said data into one or more datafield groups wherein each of said one or more data field groups isassociated with a data field of interest; evaluating an output for eachof said one or more data field groups wherein said output is a biasscore.
 7. The method of claim 6 wherein said computing one or more biasscores further comprises: classifying one or more types of bias intobias classifications.
 8. The method of claim 1 wherein said datacomprises at least competency data and awareness data.
 9. The method ofclaim 1 wherein at least one of said one or more data fields areselected from the group consisting of background and personality. 10.The method of claim 1 wherein said bias matrix is respectively computedfor each member of a group of users, and wherein each of the one or morebias scores is respectively associated with each member.
 11. The methodof claim 10 wherein said respective bias matrix for each member isaggregated into a group bias matrix, and wherein said group bias matrixis associated with a collective bias of said group of users.
 12. Asystem, said system comprising: a memory; and a processor incommunication with said memory, said processor being configured toperform operations comprising: identifying one or more data fields ofinterest; receiving data for each of said one or more data fields ofinterest; computing one or more bias scores for said one or more datafields of interest based on said data; developing a bias matrix withsaid one or more bias scores; and displaying said bias matrix to a firstuser.
 13. The system of claim 12 wherein said receiving data comprises:accepting user input data from a second user; and harvesting socialmedia for social media data for said second user.
 14. The system ofclaim 13 wherein said accepting user input data comprises: providingsaid second user with a prompt; and analyzing user results from saidprompt.
 15. The system of claim 12 wherein said computing one or morebias scores comprises: aggregating said data into one or more data fieldgroups wherein each of said one or more data field groups is associatedwith a data field of interest; evaluating an output for each of said oneor more data field groups wherein said output is a bias score.
 16. Thesystem of claim 12 wherein said data comprises at least competency dataand awareness data.
 17. The system of claim 12 wherein at least one ofsaid one or more data fields are selected from the group consisting ofbackground and personality.
 18. The system of claim 12 wherein said biasmatrix is respectively computed for each member of a group of users, andwherein each of the one or more bias scores is respectively associatedwith each member.
 19. A computer program product, said computer programproduct comprising a computer readable storage medium having programinstructions embodied therewith, said program instructions executable bya processor to cause said processor perform a function, said functioncomprising: identifying one or more data fields of interest; receivingdata for each of said one or more data fields of interest; computing oneor more bias scores for said one or more data fields of interest basedon said data; developing a bias matrix with said one or more biasscores; and displaying said bias matrix to a first user.
 20. Thecomputer program product of claim 19 wherein said receiving datacomprises: accepting user input data from a second user; and harvestingsocial media for social media data for said second user.
 21. Thecomputer program product of claim 20 wherein said accepting user inputdata comprises: providing said second user with a prompt; and analyzinguser results from said prompt.
 22. The computer program product of claim19 wherein said computing one or more bias scores comprises: aggregatingsaid data into one or more data field groups wherein each of said one ormore data field groups is associated with a data field of interest;evaluating an output for each of said one or more data field groupswherein said output is a bias score.
 23. The computer program product ofclaim 19 wherein said data comprises at least competency data andawareness data.
 24. The computer program product of claim 19 wherein atleast one of said one or more data fields are selected from the groupconsisting of background and personality.
 25. The computer programproduct of claim 19 wherein said bias matrix is respectively computedfor each member of a group of users, and wherein each of the one or morebias scores is respectively associated with each member.